package fbv.distribuidora.sistema.servico;

import java.util.Collection;
import java.util.Map;

import fbv.commun.dataTools.servico.ObjetoVO;
import fbv.commun.excecoes.FBVException;

public interface Sistema {

	Integer cadastrarCliente(Map<String, String> campos) throws FBVException;

	ObjetoVO consultarCliente(String idCliente) throws FBVException;

	void excluirCliente(Integer idCliente) throws FBVException;

	void alterarCliente(Map<String, String> campos) throws FBVException;

	Collection<ObjetoVO> consultarTodosClientes() throws FBVException;

	Integer cadastrarFornecedor(Map<String, String> campos) throws FBVException;

	ObjetoVO consultarFornecedor(String idFornecedor) throws FBVException;

	void excluirFornecedor(Integer idFornecedor) throws FBVException;

	void alterarFornecedor(Map<String, String> campos) throws FBVException;

	Collection<ObjetoVO> consultarTodosFornecedores() throws FBVException;

	Integer cadastrarPedido(Map<String, String> campos) throws FBVException;

	ObjetoVO consultarPedido(String idPedido) throws FBVException;

	void excluirPedido(Integer idPedido) throws FBVException;

	void alterarPedido(Map<String, String> campos) throws FBVException;

	Collection<ObjetoVO> consultarTodosPedidos() throws FBVException;

	Integer cadastrarProduto(Map<String, String> campos) throws FBVException;

	ObjetoVO consultarProduto(String idProduto) throws FBVException;

	void excluirProduto(Integer idProduto) throws FBVException;

	void alterarProduto(Map<String, String> campos) throws FBVException;

	Collection<ObjetoVO> consultarTodosProdutos() throws FBVException;

	boolean usuarioIsValido(String usuario, String senha) throws FBVException;

	ObjetoVO clienteIsValido(String usuario, String senha) throws FBVException;

}